
Course Rationale
Operating systems are central to computing activities. An operating system is a program that acts as an intermediary between a user of a computer and the computer hardware. Two primary aims of an operating system are to manage resources (e.g. CPU time, memory) and to control users and software. Operating system design goals are often contradictory and vary depending of user, software, and hardware criteria. This course describes the fundamental concepts behind operating systems, and examines the ways that design goals can be achieved.
1. To learn the fundamentals of Operating Systems. 2. To learn the mechanisms of OS to handle processes and threads and their communication 3. To learn the mechanisms involved in memory management in contemporary OS 4. To gain knowledge on distributed operating system concepts that includes architecture, mutual exclusion algorithms, deadlock detection algorithms and agreement protocols 5. To know the components and management aspects of concurrency management 6. To learn pro-grammatically to implement simple OS mechanisms. |
- Teacher: Subhenur Latif